<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Kyoto Cabinet: kyotocabinet::File Class Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Kyoto Cabinet
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespacekyotocabinet.html">kyotocabinet</a>      </li>
      <li class="navelem"><a class="el" href="classkyotocabinet_1_1File.html">File</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a>  </div>
  <div class="headertitle">
<div class="title">kyotocabinet::File Class Reference</div>  </div>
</div><!--header-->
<div class="contents">
<!-- doxytag: class="kyotocabinet::File" -->
<p>Filesystem abstraction.  
 <a href="classkyotocabinet_1_1File.html#details">More...</a></p>

<p><code>#include &lt;kcfile.h&gt;</code></p>

<p><a href="classkyotocabinet_1_1File-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structkyotocabinet_1_1File_1_1Status.html">Status</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structkyotocabinet_1_1File_1_1Status.html" title="Status information.">Status</a> information.  <a href="structkyotocabinet_1_1File_1_1Status.html#details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31b">OpenMode</a> { <br/>
&#160;&#160;<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31baf65fc50cf7ffc20a1606b02963990f2c">OREADER</a> =  1 &lt;&lt; 0, 
<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31badbcab091b69748473f3c4da04ed3aa6d">OWRITER</a> =  1 &lt;&lt; 1, 
<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31ba4f9fcd67030d2cc6c73b5ca8199894c7">OCREATE</a> =  1 &lt;&lt; 2, 
<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31baea7d35a88a726c06fa1cb5c9df9f32bf">OTRUNCATE</a> =  1 &lt;&lt; 3, 
<br/>
&#160;&#160;<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31ba51aafda9cc937fd61a63b9190e54be1e">ONOLOCK</a> =  1 &lt;&lt; 4, 
<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31ba59b1ec352f67e0a71a0158424cf1c03e">OTRYLOCK</a> =  1 &lt;&lt; 5
<br/>
 }</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Open modes.  <a href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31b">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a108aec828467199765f4376c7a0ed0ec">File</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="#a108aec828467199765f4376c7a0ed0ec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a0ac7009173e81dbb3338f3b5e5639259">~File</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#a0ac7009173e81dbb3338f3b5e5639259"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#aeb883a37473d69bcf33082a93212b8de">error</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the last happened error information.  <a href="#aeb883a37473d69bcf33082a93212b8de"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a248c416a5728bbd2b57356e29da124a3">open</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>, uint32_t mode=<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31badbcab091b69748473f3c4da04ed3aa6d">OWRITER</a>|<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31ba4f9fcd67030d2cc6c73b5ca8199894c7">OCREATE</a>, int64_t msiz=0)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Open a file.  <a href="#a248c416a5728bbd2b57356e29da124a3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a33a351f94906cac815292e8fc4e78351">close</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Close the file.  <a href="#a33a351f94906cac815292e8fc4e78351"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#afca36e49dded6786bb7d00c3c1926dbd">write</a> (int64_t off, const void *buf, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write data.  <a href="#afca36e49dded6786bb7d00c3c1926dbd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a057b2941383eb8ef9b197a94a40f2fc8">write</a> (int64_t off, const std::string &amp;str)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write data.  <a href="#a057b2941383eb8ef9b197a94a40f2fc8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#aa0c522ef6450ef22dd1f7f95eb9403ac">write_fast</a> (int64_t off, const void *buf, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write data with assuring the region does not spill from the file size.  <a href="#aa0c522ef6450ef22dd1f7f95eb9403ac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a7ff78cab65cda563f923401b3df600fb">write_fast</a> (int64_t off, const std::string &amp;str)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write data with assuring the region does not spill from the file size.  <a href="#a7ff78cab65cda563f923401b3df600fb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a67bfaf812bdcb51540ec7e55bc08936d">append</a> (const void *buf, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write data at the end of the file.  <a href="#a67bfaf812bdcb51540ec7e55bc08936d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#adfa8a6dcedf885b3a8125d172a1635d4">append</a> (const std::string &amp;str)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write data at the end of the file.  <a href="#adfa8a6dcedf885b3a8125d172a1635d4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a3651b85be0abcdb7e7d4b17d059f28c5">read</a> (int64_t off, void *buf, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read data.  <a href="#a3651b85be0abcdb7e7d4b17d059f28c5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a93c5c8946d63cc83db8ef74805c61826">read</a> (int64_t off, std::string *buf, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read data.  <a href="#a93c5c8946d63cc83db8ef74805c61826"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a657a956e6d8022a00f3f455f51845fd1">read_fast</a> (int64_t off, void *buf, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read data with assuring the region does not spill from the file size.  <a href="#a657a956e6d8022a00f3f455f51845fd1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a481b405a11c20c709e6a134504623a08">read_fast</a> (int64_t off, std::string *buf, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read data.  <a href="#a481b405a11c20c709e6a134504623a08"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a074abc552c4f37f5924eb7155129c080">truncate</a> (int64_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Truncate the file.  <a href="#a074abc552c4f37f5924eb7155129c080"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#ad345d1f79fa4b22af3596f71ad419098">synchronize</a> (bool hard)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Synchronize updated contents with the file and the device.  <a href="#ad345d1f79fa4b22af3596f71ad419098"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#aaf75c9dca3efc4c55cae28b81ce0ad64">refresh</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Refresh the internal state for update by others.  <a href="#aaf75c9dca3efc4c55cae28b81ce0ad64"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#aa08b3bb2fc53a9ba3f83ae2cbdaf9643">begin_transaction</a> (bool hard, int64_t off)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Begin transaction.  <a href="#aa08b3bb2fc53a9ba3f83ae2cbdaf9643"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a8cf3d04d8a85a2653ccfe312a76905fb">end_transaction</a> (bool commit)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">End transaction.  <a href="#a8cf3d04d8a85a2653ccfe312a76905fb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#ae296763ca2d39f898aebc3ad8aa34ea2">write_transaction</a> (int64_t off, size_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write a WAL message of transaction explicitly.  <a href="#ae296763ca2d39f898aebc3ad8aa34ea2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the size of the file.  <a href="#aff354e63e33d659f4ad5a84037380f83"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the path of the file.  <a href="#a825f82ce2b2239944caf4cb52720077b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a19a94168922a42567ea0e6df824beb72">recovered</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether the file was recovered or not.  <a href="#a19a94168922a42567ea0e6df824beb72"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a44d2fe960229f0468806445d43440e41">read_file</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>, int64_t *sp, int64_t limit=-1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read the whole data from a file.  <a href="#a44d2fe960229f0468806445d43440e41"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a739f70505356aa89e94d6012892b285d">write_file</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>, const char *buf, int64_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">size</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write the whole data into a file.  <a href="#a739f70505356aa89e94d6012892b285d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#ad259250ce5a4543b5d75198fa303546f">status</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>, <a class="el" href="structkyotocabinet_1_1File_1_1Status.html">Status</a> *buf=NULL)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the status information of a file.  <a href="#ad259250ce5a4543b5d75198fa303546f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#ab33835fe5a673b8e31dff4d6e2bdec2f">absolute_path</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the absolute path of a file.  <a href="#ab33835fe5a673b8e31dff4d6e2bdec2f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#ac9477256c7317af69501a764aef36749">remove</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a file.  <a href="#ac9477256c7317af69501a764aef36749"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#afb85325d73d902afd8fce97e11051118">rename</a> (const std::string &amp;opath, const std::string &amp;npath)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Change the name or location of a file.  <a href="#afb85325d73d902afd8fce97e11051118"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a491747ac5651cf83c2bcd6707ade6ed2">read_directory</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>, std::vector&lt; std::string &gt; *strvec)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a directory.  <a href="#a491747ac5651cf83c2bcd6707ade6ed2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a667155059ea251443b6622357b21312e">make_directory</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a directory.  <a href="#a667155059ea251443b6622357b21312e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#aaf1f02e02232a928b2156b876663f428">remove_directory</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a directory.  <a href="#aaf1f02e02232a928b2156b876663f428"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a0a1a45f047f6f955f1a93efb1fb38ee3">remove_recursively</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove a file or a directory recursively.  <a href="#a0a1a45f047f6f955f1a93efb1fb38ee3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#af944354dd0c019cb4f1c479aeb1c75a0">get_current_directory</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the path of the current working directory.  <a href="#af944354dd0c019cb4f1c479aeb1c75a0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a48e489a86f873e086e556a83d3550b1b">set_current_directory</a> (const std::string &amp;<a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">path</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the current working directory.  <a href="#a48e489a86f873e086e556a83d3550b1b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a18c04557cb776e4e64452bd0673bfe27">synchronize_whole</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Synchronize the whole of the file system with the device.  <a href="#a18c04557cb776e4e64452bd0673bfe27"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a76c9e97e3a027af4f61f0b3033d1d9ae">PATHCHR</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Path delimiter character.  <a href="#a76c9e97e3a027af4f61f0b3033d1d9ae"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const char *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a1ee0e0fbfdb8ec8cc4f3c01cd9d496e1">PATHSTR</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Path delimiter string.  <a href="#a1ee0e0fbfdb8ec8cc4f3c01cd9d496e1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#af5f24feb1f61c21eacadd879279ac070">EXTCHR</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Extension delimiter character.  <a href="#af5f24feb1f61c21eacadd879279ac070"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const char *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a2dfdee6ce6291cb13fb0a16d4aaa2832">EXTSTR</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Extension delimiter string.  <a href="#a2dfdee6ce6291cb13fb0a16d4aaa2832"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const char *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a3978147e872939dbd38c5240dcbdeadc">CDIRSTR</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Current directory string.  <a href="#a3978147e872939dbd38c5240dcbdeadc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const char *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkyotocabinet_1_1File.html#a7617c4bcfc05b974772724186e770d29">PDIRSTR</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent directory string.  <a href="#a7617c4bcfc05b974772724186e770d29"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Filesystem abstraction. </p>
</div><hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a09665e8b8aae9c3450b1a04dee21b31b"></a><!-- doxytag: member="kyotocabinet::File::OpenMode" ref="a09665e8b8aae9c3450b1a04dee21b31b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31b">kyotocabinet::File::OpenMode</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Open modes. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a09665e8b8aae9c3450b1a04dee21b31baf65fc50cf7ffc20a1606b02963990f2c"></a><!-- doxytag: member="OREADER" ref="a09665e8b8aae9c3450b1a04dee21b31baf65fc50cf7ffc20a1606b02963990f2c" args="" -->OREADER</em>&nbsp;</td><td>
<p>open as a reader </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a09665e8b8aae9c3450b1a04dee21b31badbcab091b69748473f3c4da04ed3aa6d"></a><!-- doxytag: member="OWRITER" ref="a09665e8b8aae9c3450b1a04dee21b31badbcab091b69748473f3c4da04ed3aa6d" args="" -->OWRITER</em>&nbsp;</td><td>
<p>open as a writer </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a09665e8b8aae9c3450b1a04dee21b31ba4f9fcd67030d2cc6c73b5ca8199894c7"></a><!-- doxytag: member="OCREATE" ref="a09665e8b8aae9c3450b1a04dee21b31ba4f9fcd67030d2cc6c73b5ca8199894c7" args="" -->OCREATE</em>&nbsp;</td><td>
<p>writer creating </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a09665e8b8aae9c3450b1a04dee21b31baea7d35a88a726c06fa1cb5c9df9f32bf"></a><!-- doxytag: member="OTRUNCATE" ref="a09665e8b8aae9c3450b1a04dee21b31baea7d35a88a726c06fa1cb5c9df9f32bf" args="" -->OTRUNCATE</em>&nbsp;</td><td>
<p>writer truncating </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a09665e8b8aae9c3450b1a04dee21b31ba51aafda9cc937fd61a63b9190e54be1e"></a><!-- doxytag: member="ONOLOCK" ref="a09665e8b8aae9c3450b1a04dee21b31ba51aafda9cc937fd61a63b9190e54be1e" args="" -->ONOLOCK</em>&nbsp;</td><td>
<p>open without locking </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a09665e8b8aae9c3450b1a04dee21b31ba59b1ec352f67e0a71a0158424cf1c03e"></a><!-- doxytag: member="OTRYLOCK" ref="a09665e8b8aae9c3450b1a04dee21b31ba59b1ec352f67e0a71a0158424cf1c03e" args="" -->OTRYLOCK</em>&nbsp;</td><td>
<p>lock without blocking </p>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a108aec828467199765f4376c7a0ed0ec"></a><!-- doxytag: member="kyotocabinet::File::File" ref="a108aec828467199765f4376c7a0ed0ec" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkyotocabinet_1_1File.html#a108aec828467199765f4376c7a0ed0ec">kyotocabinet::File::File</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor. </p>

</div>
</div>
<a class="anchor" id="a0ac7009173e81dbb3338f3b5e5639259"></a><!-- doxytag: member="kyotocabinet::File::~File" ref="a0ac7009173e81dbb3338f3b5e5639259" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classkyotocabinet_1_1File.html#a0ac7009173e81dbb3338f3b5e5639259">kyotocabinet::File::~File</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>If the file is not closed, it is closed implicitly. </dd></dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="aeb883a37473d69bcf33082a93212b8de"></a><!-- doxytag: member="kyotocabinet::File::error" ref="aeb883a37473d69bcf33082a93212b8de" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="classkyotocabinet_1_1File.html#aeb883a37473d69bcf33082a93212b8de">kyotocabinet::File::error</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the last happened error information. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the last happened error information. </dd></dl>

</div>
</div>
<a class="anchor" id="a248c416a5728bbd2b57356e29da124a3"></a><!-- doxytag: member="kyotocabinet::File::open" ref="a248c416a5728bbd2b57356e29da124a3" args="(const std::string &amp;path, uint32_t mode=OWRITER|OCREATE, int64_t msiz=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a248c416a5728bbd2b57356e29da124a3">kyotocabinet::File::open</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mode</em> = <code><a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31badbcab091b69748473f3c4da04ed3aa6d">OWRITER</a>|<a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31ba4f9fcd67030d2cc6c73b5ca8199894c7">OCREATE</a></code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>msiz</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Open a file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a file. </td></tr>
    <tr><td class="paramname">mode</td><td>the connection mode. <a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31badbcab091b69748473f3c4da04ed3aa6d" title="open as a writer">File::OWRITER</a> as a writer, <a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31baf65fc50cf7ffc20a1606b02963990f2c" title="open as a reader">File::OREADER</a> as a reader. The following may be added to the writer mode by bitwise-or: <a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31ba4f9fcd67030d2cc6c73b5ca8199894c7" title="writer creating">File::OCREATE</a>, which means it creates a new file if the file does not exist, <a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31baea7d35a88a726c06fa1cb5c9df9f32bf" title="writer truncating">File::OTRUNCATE</a>, which means it creates a new file regardless if the file exists. The following may be added to both of the reader mode and the writer mode by bitwise-or: <a class="el" href="classkyotocabinet_1_1File.html#a09665e8b8aae9c3450b1a04dee21b31ba51aafda9cc937fd61a63b9190e54be1e" title="open without locking">File::ONOLOCK</a>, which means it opens the file without file locking, File::TRYLOCK, which means locking is performed without blocking. </td></tr>
    <tr><td class="paramname">msiz</td><td>the size of the internal memory-mapped region. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a33a351f94906cac815292e8fc4e78351"></a><!-- doxytag: member="kyotocabinet::File::close" ref="a33a351f94906cac815292e8fc4e78351" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a33a351f94906cac815292e8fc4e78351">kyotocabinet::File::close</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Close the file. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="afca36e49dded6786bb7d00c3c1926dbd"></a><!-- doxytag: member="kyotocabinet::File::write" ref="afca36e49dded6786bb7d00c3c1926dbd" args="(int64_t off, const void *buf, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#afca36e49dded6786bb7d00c3c1926dbd">kyotocabinet::File::write</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">off</td><td>the offset of the destination. </td></tr>
    <tr><td class="paramname">buf</td><td>the pointer to the data region. </td></tr>
    <tr><td class="paramname">size</td><td>the size of the data region. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a057b2941383eb8ef9b197a94a40f2fc8"></a><!-- doxytag: member="kyotocabinet::File::write" ref="a057b2941383eb8ef9b197a94a40f2fc8" args="(int64_t off, const std::string &amp;str)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#afca36e49dded6786bb7d00c3c1926dbd">kyotocabinet::File::write</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>Equal to the original <a class="el" href="classkyotocabinet_1_1File.html#afca36e49dded6786bb7d00c3c1926dbd" title="Write data.">File::write</a> method except that the sigunature is different. </dd></dl>

</div>
</div>
<a class="anchor" id="aa0c522ef6450ef22dd1f7f95eb9403ac"></a><!-- doxytag: member="kyotocabinet::File::write_fast" ref="aa0c522ef6450ef22dd1f7f95eb9403ac" args="(int64_t off, const void *buf, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#aa0c522ef6450ef22dd1f7f95eb9403ac">kyotocabinet::File::write_fast</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data with assuring the region does not spill from the file size. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">off</td><td>the offset of the destination. </td></tr>
    <tr><td class="paramname">buf</td><td>the pointer to the data region. </td></tr>
    <tr><td class="paramname">size</td><td>the size of the data region. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a7ff78cab65cda563f923401b3df600fb"></a><!-- doxytag: member="kyotocabinet::File::write_fast" ref="a7ff78cab65cda563f923401b3df600fb" args="(int64_t off, const std::string &amp;str)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#aa0c522ef6450ef22dd1f7f95eb9403ac">kyotocabinet::File::write_fast</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data with assuring the region does not spill from the file size. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>Equal to the original <a class="el" href="classkyotocabinet_1_1File.html#aa0c522ef6450ef22dd1f7f95eb9403ac" title="Write data with assuring the region does not spill from the file size.">File::write_fast</a> method except that the sigunature is different. </dd></dl>

</div>
</div>
<a class="anchor" id="a67bfaf812bdcb51540ec7e55bc08936d"></a><!-- doxytag: member="kyotocabinet::File::append" ref="a67bfaf812bdcb51540ec7e55bc08936d" args="(const void *buf, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a67bfaf812bdcb51540ec7e55bc08936d">kyotocabinet::File::append</a> </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data at the end of the file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">buf</td><td>the pointer to the data region. </td></tr>
    <tr><td class="paramname">size</td><td>the size of the data region. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="adfa8a6dcedf885b3a8125d172a1635d4"></a><!-- doxytag: member="kyotocabinet::File::append" ref="adfa8a6dcedf885b3a8125d172a1635d4" args="(const std::string &amp;str)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a67bfaf812bdcb51540ec7e55bc08936d">kyotocabinet::File::append</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data at the end of the file. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>Equal to the original <a class="el" href="classkyotocabinet_1_1File.html#a67bfaf812bdcb51540ec7e55bc08936d" title="Write data at the end of the file.">File::append</a> method except that the sigunature is different. </dd></dl>

</div>
</div>
<a class="anchor" id="a3651b85be0abcdb7e7d4b17d059f28c5"></a><!-- doxytag: member="kyotocabinet::File::read" ref="a3651b85be0abcdb7e7d4b17d059f28c5" args="(int64_t off, void *buf, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a3651b85be0abcdb7e7d4b17d059f28c5">kyotocabinet::File::read</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read data. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">off</td><td>the offset of the source. </td></tr>
    <tr><td class="paramname">buf</td><td>the pointer to the destination region. </td></tr>
    <tr><td class="paramname">size</td><td>the size of the data to be read. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a93c5c8946d63cc83db8ef74805c61826"></a><!-- doxytag: member="kyotocabinet::File::read" ref="a93c5c8946d63cc83db8ef74805c61826" args="(int64_t off, std::string *buf, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a3651b85be0abcdb7e7d4b17d059f28c5">kyotocabinet::File::read</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::string *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read data. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>Equal to the original <a class="el" href="classkyotocabinet_1_1File.html#a3651b85be0abcdb7e7d4b17d059f28c5" title="Read data.">File::read</a> method except that the sigunature is different. </dd></dl>

</div>
</div>
<a class="anchor" id="a657a956e6d8022a00f3f455f51845fd1"></a><!-- doxytag: member="kyotocabinet::File::read_fast" ref="a657a956e6d8022a00f3f455f51845fd1" args="(int64_t off, void *buf, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a657a956e6d8022a00f3f455f51845fd1">kyotocabinet::File::read_fast</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read data with assuring the region does not spill from the file size. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">off</td><td>the offset of the source. </td></tr>
    <tr><td class="paramname">buf</td><td>the pointer to the destination region. </td></tr>
    <tr><td class="paramname">size</td><td>the size of the data to be read. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a481b405a11c20c709e6a134504623a08"></a><!-- doxytag: member="kyotocabinet::File::read_fast" ref="a481b405a11c20c709e6a134504623a08" args="(int64_t off, std::string *buf, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a657a956e6d8022a00f3f455f51845fd1">kyotocabinet::File::read_fast</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::string *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read data. </p>
<dl class="note"><dt><b>Note:</b></dt><dd>Equal to the original <a class="el" href="classkyotocabinet_1_1File.html#a3651b85be0abcdb7e7d4b17d059f28c5" title="Read data.">File::read</a> method except that the sigunature is different. </dd></dl>

</div>
</div>
<a class="anchor" id="a074abc552c4f37f5924eb7155129c080"></a><!-- doxytag: member="kyotocabinet::File::truncate" ref="a074abc552c4f37f5924eb7155129c080" args="(int64_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a074abc552c4f37f5924eb7155129c080">kyotocabinet::File::truncate</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>size</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Truncate the file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">size</td><td>the new size of the file. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="ad345d1f79fa4b22af3596f71ad419098"></a><!-- doxytag: member="kyotocabinet::File::synchronize" ref="ad345d1f79fa4b22af3596f71ad419098" args="(bool hard)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#ad345d1f79fa4b22af3596f71ad419098">kyotocabinet::File::synchronize</a> </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>hard</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Synchronize updated contents with the file and the device. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">hard</td><td>true for physical synchronization with the device, or false for logical synchronization with the file system. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="aaf75c9dca3efc4c55cae28b81ce0ad64"></a><!-- doxytag: member="kyotocabinet::File::refresh" ref="aaf75c9dca3efc4c55cae28b81ce0ad64" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#aaf75c9dca3efc4c55cae28b81ce0ad64">kyotocabinet::File::refresh</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Refresh the internal state for update by others. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="aa08b3bb2fc53a9ba3f83ae2cbdaf9643"></a><!-- doxytag: member="kyotocabinet::File::begin_transaction" ref="aa08b3bb2fc53a9ba3f83ae2cbdaf9643" args="(bool hard, int64_t off)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#aa08b3bb2fc53a9ba3f83ae2cbdaf9643">kyotocabinet::File::begin_transaction</a> </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>hard</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Begin transaction. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">hard</td><td>true for physical synchronization with the device, or false for logical synchronization with the file system. </td></tr>
    <tr><td class="paramname">off</td><td>the beginning offset of the guarded region </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a8cf3d04d8a85a2653ccfe312a76905fb"></a><!-- doxytag: member="kyotocabinet::File::end_transaction" ref="a8cf3d04d8a85a2653ccfe312a76905fb" args="(bool commit)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a8cf3d04d8a85a2653ccfe312a76905fb">kyotocabinet::File::end_transaction</a> </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>commit</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>End transaction. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">commit</td><td>true to commit the transaction, or false to abort the transaction. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="ae296763ca2d39f898aebc3ad8aa34ea2"></a><!-- doxytag: member="kyotocabinet::File::write_transaction" ref="ae296763ca2d39f898aebc3ad8aa34ea2" args="(int64_t off, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#ae296763ca2d39f898aebc3ad8aa34ea2">kyotocabinet::File::write_transaction</a> </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>off</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write a WAL message of transaction explicitly. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">off</td><td>the offset of the source. </td></tr>
    <tr><td class="paramname">size</td><td>the size of the data to be read. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="aff354e63e33d659f4ad5a84037380f83"></a><!-- doxytag: member="kyotocabinet::File::size" ref="aff354e63e33d659f4ad5a84037380f83" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int64_t <a class="el" href="classkyotocabinet_1_1File.html#aff354e63e33d659f4ad5a84037380f83">kyotocabinet::File::size</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the size of the file. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the size of the file, or 0 on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a825f82ce2b2239944caf4cb52720077b"></a><!-- doxytag: member="kyotocabinet::File::path" ref="a825f82ce2b2239944caf4cb52720077b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string <a class="el" href="classkyotocabinet_1_1File.html#a825f82ce2b2239944caf4cb52720077b">kyotocabinet::File::path</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the path of the file. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the path of the file in bytes, or an empty string on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a19a94168922a42567ea0e6df824beb72"></a><!-- doxytag: member="kyotocabinet::File::recovered" ref="a19a94168922a42567ea0e6df824beb72" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classkyotocabinet_1_1File.html#a19a94168922a42567ea0e6df824beb72">kyotocabinet::File::recovered</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check whether the file was recovered or not. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if recovered, or false if not. </dd></dl>

</div>
</div>
<a class="anchor" id="a44d2fe960229f0468806445d43440e41"></a><!-- doxytag: member="kyotocabinet::File::read_file" ref="a44d2fe960229f0468806445d43440e41" args="(const std::string &amp;path, int64_t *sp, int64_t limit=&#45;1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static char* <a class="el" href="classkyotocabinet_1_1File.html#a44d2fe960229f0468806445d43440e41">kyotocabinet::File::read_file</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t *&#160;</td>
          <td class="paramname"><em>sp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>limit</em> = <code>-1</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read the whole data from a file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a file. </td></tr>
    <tr><td class="paramname">sp</td><td>the pointer to the variable into which the size of the region of the return value is assigned. </td></tr>
    <tr><td class="paramname">limit</td><td>the limit length to read. If it is nagative, no limit is specified. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the pointer to the region of the read data, or NULL on failure. </dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>Because an additional zero code is appended at the end of the region of the return value, the return value can be treated as a C-style string. Because the region of the return value is allocated with the the new[] operator, it should be released with the delete[] operator when it is no longer in use. </dd></dl>

</div>
</div>
<a class="anchor" id="a739f70505356aa89e94d6012892b285d"></a><!-- doxytag: member="kyotocabinet::File::write_file" ref="a739f70505356aa89e94d6012892b285d" args="(const std::string &amp;path, const char *buf, int64_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#a739f70505356aa89e94d6012892b285d">kyotocabinet::File::write_file</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write the whole data into a file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a file. </td></tr>
    <tr><td class="paramname">buf</td><td>the data buffer to write. </td></tr>
    <tr><td class="paramname">size</td><td>the size of the data buffer. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>The existing file corresponding to the path is overwritten. If no file corresponds to the path, a new file is created. </dd></dl>

</div>
</div>
<a class="anchor" id="ad259250ce5a4543b5d75198fa303546f"></a><!-- doxytag: member="kyotocabinet::File::status" ref="ad259250ce5a4543b5d75198fa303546f" args="(const std::string &amp;path, Status *buf=NULL)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#ad259250ce5a4543b5d75198fa303546f">kyotocabinet::File::status</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structkyotocabinet_1_1File_1_1Status.html">Status</a> *&#160;</td>
          <td class="paramname"><em>buf</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the status information of a file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a file. </td></tr>
    <tr><td class="paramname">buf</td><td>a structure of status information. If it is NULL, it is omitted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="ab33835fe5a673b8e31dff4d6e2bdec2f"></a><!-- doxytag: member="kyotocabinet::File::absolute_path" ref="ab33835fe5a673b8e31dff4d6e2bdec2f" args="(const std::string &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static std::string <a class="el" href="classkyotocabinet_1_1File.html#ab33835fe5a673b8e31dff4d6e2bdec2f">kyotocabinet::File::absolute_path</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the absolute path of a file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a file. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the absolute path of the file, or an empty string on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="ac9477256c7317af69501a764aef36749"></a><!-- doxytag: member="kyotocabinet::File::remove" ref="ac9477256c7317af69501a764aef36749" args="(const std::string &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#ac9477256c7317af69501a764aef36749">kyotocabinet::File::remove</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove a file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a file. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="afb85325d73d902afd8fce97e11051118"></a><!-- doxytag: member="kyotocabinet::File::rename" ref="afb85325d73d902afd8fce97e11051118" args="(const std::string &amp;opath, const std::string &amp;npath)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#afb85325d73d902afd8fce97e11051118">kyotocabinet::File::rename</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>opath</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>npath</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Change the name or location of a file. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">opath</td><td>the old path of a file. </td></tr>
    <tr><td class="paramname">npath</td><td>the new path of a file. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a491747ac5651cf83c2bcd6707ade6ed2"></a><!-- doxytag: member="kyotocabinet::File::read_directory" ref="a491747ac5651cf83c2bcd6707ade6ed2" args="(const std::string &amp;path, std::vector&lt; std::string &gt; *strvec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#a491747ac5651cf83c2bcd6707ade6ed2">kyotocabinet::File::read_directory</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; std::string &gt; *&#160;</td>
          <td class="paramname"><em>strvec</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read a directory. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a directory. </td></tr>
    <tr><td class="paramname">strvec</td><td>a string list to contain the result. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a667155059ea251443b6622357b21312e"></a><!-- doxytag: member="kyotocabinet::File::make_directory" ref="a667155059ea251443b6622357b21312e" args="(const std::string &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#a667155059ea251443b6622357b21312e">kyotocabinet::File::make_directory</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Make a directory. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a directory. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="aaf1f02e02232a928b2156b876663f428"></a><!-- doxytag: member="kyotocabinet::File::remove_directory" ref="aaf1f02e02232a928b2156b876663f428" args="(const std::string &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#aaf1f02e02232a928b2156b876663f428">kyotocabinet::File::remove_directory</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove a directory. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a directory. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a0a1a45f047f6f955f1a93efb1fb38ee3"></a><!-- doxytag: member="kyotocabinet::File::remove_recursively" ref="a0a1a45f047f6f955f1a93efb1fb38ee3" args="(const std::string &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#a0a1a45f047f6f955f1a93efb1fb38ee3">kyotocabinet::File::remove_recursively</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Remove a file or a directory recursively. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a file or a directory. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="af944354dd0c019cb4f1c479aeb1c75a0"></a><!-- doxytag: member="kyotocabinet::File::get_current_directory" ref="af944354dd0c019cb4f1c479aeb1c75a0" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static std::string <a class="el" href="classkyotocabinet_1_1File.html#af944354dd0c019cb4f1c479aeb1c75a0">kyotocabinet::File::get_current_directory</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the path of the current working directory. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the path of the current working directory, or an empty string on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a48e489a86f873e086e556a83d3550b1b"></a><!-- doxytag: member="kyotocabinet::File::set_current_directory" ref="a48e489a86f873e086e556a83d3550b1b" args="(const std::string &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#a48e489a86f873e086e556a83d3550b1b">kyotocabinet::File::set_current_directory</a> </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the current working directory. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of a directory. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<a class="anchor" id="a18c04557cb776e4e64452bd0673bfe27"></a><!-- doxytag: member="kyotocabinet::File::synchronize_whole" ref="a18c04557cb776e4e64452bd0673bfe27" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static bool <a class="el" href="classkyotocabinet_1_1File.html#a18c04557cb776e4e64452bd0673bfe27">kyotocabinet::File::synchronize_whole</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Synchronize the whole of the file system with the device. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on success, or false on failure. </dd></dl>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a76c9e97e3a027af4f61f0b3033d1d9ae"></a><!-- doxytag: member="kyotocabinet::File::PATHCHR" ref="a76c9e97e3a027af4f61f0b3033d1d9ae" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char <a class="el" href="classkyotocabinet_1_1File.html#a76c9e97e3a027af4f61f0b3033d1d9ae">kyotocabinet::File::PATHCHR</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Path delimiter character. </p>

</div>
</div>
<a class="anchor" id="a1ee0e0fbfdb8ec8cc4f3c01cd9d496e1"></a><!-- doxytag: member="kyotocabinet::File::PATHSTR" ref="a1ee0e0fbfdb8ec8cc4f3c01cd9d496e1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* const <a class="el" href="classkyotocabinet_1_1File.html#a1ee0e0fbfdb8ec8cc4f3c01cd9d496e1">kyotocabinet::File::PATHSTR</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Path delimiter string. </p>

</div>
</div>
<a class="anchor" id="af5f24feb1f61c21eacadd879279ac070"></a><!-- doxytag: member="kyotocabinet::File::EXTCHR" ref="af5f24feb1f61c21eacadd879279ac070" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char <a class="el" href="classkyotocabinet_1_1File.html#af5f24feb1f61c21eacadd879279ac070">kyotocabinet::File::EXTCHR</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Extension delimiter character. </p>

</div>
</div>
<a class="anchor" id="a2dfdee6ce6291cb13fb0a16d4aaa2832"></a><!-- doxytag: member="kyotocabinet::File::EXTSTR" ref="a2dfdee6ce6291cb13fb0a16d4aaa2832" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* const <a class="el" href="classkyotocabinet_1_1File.html#a2dfdee6ce6291cb13fb0a16d4aaa2832">kyotocabinet::File::EXTSTR</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Extension delimiter string. </p>

</div>
</div>
<a class="anchor" id="a3978147e872939dbd38c5240dcbdeadc"></a><!-- doxytag: member="kyotocabinet::File::CDIRSTR" ref="a3978147e872939dbd38c5240dcbdeadc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* const <a class="el" href="classkyotocabinet_1_1File.html#a3978147e872939dbd38c5240dcbdeadc">kyotocabinet::File::CDIRSTR</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Current directory string. </p>

</div>
</div>
<a class="anchor" id="a7617c4bcfc05b974772724186e770d29"></a><!-- doxytag: member="kyotocabinet::File::PDIRSTR" ref="a7617c4bcfc05b974772724186e770d29" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* const <a class="el" href="classkyotocabinet_1_1File.html#a7617c4bcfc05b974772724186e770d29">kyotocabinet::File::PDIRSTR</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Parent directory string. </p>

</div>
</div>
</div><!-- contents -->


<hr class="footer"/><address class="footer"><small>
Generated on Fri May 25 2012 01:21:36 for Kyoto Cabinet by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>
